package com.tibco.as.spacebar.ui.wizards.transfer.excel;
import org.apache.poi.ss.SpreadsheetVersion;
import org.eclipse.jface.layout.GridDataFactory;
import org.eclipse.jface.viewers.ArrayContentProvider;
import org.eclipse.jface.viewers.ComboViewer;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.jface.wizard.WizardPage;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Label;
import com.tibco.as.spacebar.ui.Messages;
import com.tibco.as.spacebar.ui.SWTFactory;
import com.tibco.as.excel.ExcelExport;
public class ExcelExportConfigurationPage extends WizardPage {
private SpreadsheetVersion version;
private ExcelExport config;
private ComboViewer versionCombo;
public ExcelExportConfigurationPage(SpreadsheetVersion version,
ExcelExport config) {
super("ExcelExportConfigurationPage");
setTitle("Excel Export Options");
setDescription("Define the options for the Excel export.");
this.version = version;
this.config = config;
}
@Override
public void createControl(Composite parent) {
initializeDialogUnits(parent);
Composite composite = new Composite(parent, SWT.NONE);
composite.setLayout(new GridLayout());
composite.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_FILL
| GridData.HORIZONTAL_ALIGN_FILL));
composite.setFont(parent.getFont());
Composite versionComposite = SWTFactory.createComposite(composite, 2,
1, GridData.VERTICAL_ALIGN_FILL
| GridData.HORIZONTAL_ALIGN_FILL);
Label versionLabel = new Label(versionComposite, SWT.NONE);
versionLabel.setText(Messages.Excel_Export_Version);
versionLabel.setToolTipText(Messages.Excel_Export_Version_Tooltip);
versionCombo = new ComboViewer(versionComposite, SWT.READ_ONLY);
versionCombo.getCombo().setLayoutData(
new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
versionCombo.setContentProvider(ArrayContentProvider.getInstance());
versionCombo.setInput(SpreadsheetVersion.values());
versionCombo.getCombo().setToolTipText(
Messages.Excel_Export_Version_Tooltip);
versionCombo.setSelection(new StructuredSelection(version));
ExcelExportEditor editor = new ExcelExportEditor(composite, SWT.NONE,
config);
editor.setFont(composite.getFont());
GridDataFactory.defaultsFor(editor).grab(true, false).applyTo(editor);
Formats formats = new Formats(config.getAttributes());
FormatsEditor formatsEditor = new FormatsEditor(composite, SWT.NONE,
formats);
GridDataFactory.defaultsFor(formatsEditor).grab(true, false)
.applyTo(formatsEditor);
formatsEditor.setFont(composite.getFont());
setControl(composite);
}
public SpreadsheetVersion getSpreadsheetVersion() {
return (SpreadsheetVersion) ((IStructuredSelection) versionCombo
.getSelection()).getFirstElement();
}
}